package com.jumi.microservice.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.jm.member.common.core.web.domain.AjaxResult;
import com.jumi.microservice.common.base.dto.ResponseResult;
import com.jumi.microservice.dto.request.JmUserUpdateRequest;
import com.jumi.microservice.entity.JmUser;
import com.jumi.microservice.entity.vo.JmUserSetVo;
import com.jumi.microservice.enums.SourceType;

/**
 * <p>
 * 会员表 服务类
 * </p>
 *
 * @author 要挑客户管理团队
 * @since 2020-07-14
 */
public interface IJmUserService extends IService<JmUser>, PageService {

    ResponseResult updateUser(JmUserUpdateRequest request, JmUser user);

    void saveUser(JmUser jmUser);

    void checkBindUser(JmUser user, JmUser bindUser,Integer bindType);

    ResponseResult bindUp(JmUser user, JmUser bindUser, SourceType sourceType);

    ResponseResult bindDown(JmUser user, JmUser bindUser, SourceType sourceType);

    Integer getUserCountByNormal();

    JmUserUpdateRequest getUserInfoById(Integer id);

    JmUser getUserByMobile(String mobile);

    JmUser packUser(Object arg);

    JmUser checkUserExist(Integer memberId);

    JmUserSetVo findUserSetById(Integer memberId);
}
